# 定义字符串
str1 = "java,python,hadoop,数据"
print(str1, type(str1))

# 1、通过下标获取字符
# 下标：从左往右0到n-1
# 下标：从右往左-1到-n
print(str1[5], type(str1[5]))

# 如果获取了不存在的下标，会出现下标越界的异常
# print(str[100])

# 获取字符串的长度
# len: 用于获取序列中元素的个数
print(len(str1))

# 使用正下标获取最后一个元素
print(str1[len(str1) - 1])

# 使用负下标获取最后一个元素
print(str1[-1])

# 2、截取(切片)，截取字符串中一段字符
# 语法：str[开始位置:结束位置]，不包含结束位置的字符（含头不含尾）
print(str1[5:11])
print(str1[5:-10])

# 3、切分： 将一个字符串通过一个字符切分成多个字符串
# split： 通过一个分割分隔符将一个字符串切分成一个列表
strs = str1.split(",")
print(strs, type(strs))

# 4、字符串拼接

# 使用加号拼接
print("java," + "hadoop," + "python")

id = "001"
name = "张三"
age = 23
sex = "男"
clazz = "一班"

info = id + "," + name + "," + str(age) + "," + sex + "," + clazz

print(info)

# 5、字符串格式化
# %s ：字符串标识，%d：数字的标识
into = "%s,%s,%d,%s,%s,java" % (id, name, age, sex, clazz)
print(into)

# format
# 按照顺序匹配值
into = "{},{},{},{},{}".format(id, name, age, sex, clazz)
print(into)

# format
# 按照名称匹配
into = "{id},{name}".format(id=id, name=name)
print(into)

# 应用
doc = """
函数 {}、{}、{} 和 {}分别用于将变量转换 成整型、
浮点型、字符串和布尔型变量
""".format("int()", "str()", "float()", "bool()")

print(doc)

# 6、重复
print("java" * 10)

# 7、去掉前后的空格，制表符，换行符
str1 = "java,大数据\n"

# strip: 去掉前后的空格，制表符，换行符
# lstrip: 去掉的前面空格，制表符，换行符
# rstrip: 去掉的后面空格，制表符，换行符

str2 = str1.rstrip()
print(str2)

print("=" * 100)
